const fs = require("fs");

// 定义Promise
let p = new Promise((resolve, reject) => {
    // -----------异步代码------------
    fs.readFile("./files/a.txt", "utf-8", (err, data) => {
        // 使用三元运算符代替if判断
        err ? reject(err) : resolve(data.length);
    });
});

// 获取结果
/*
 *前面的then里面如果return了一个Promise对象
 *后面的then里面可以得到上一个Promise的结果
 */
p.then((result) => {
        console.log(result);
        return new Promise((resolve, reject) => {
            // -----------异步代码------------
            fs.readFile("./files/b.txt", "utf-8", (err, data) => {
                // 使用三元运算符代替if判断
                err ? reject(err) : resolve(data.length);
            });
        });
    })
    .then((result) => {
        console.log(result);
        return new Promise((resolve, reject) => {
            // -----------异步代码------------
            fs.readFile("./files/c.txt", "utf-8", (err, data) => {
                // 使用三元运算符代替if判断
                err ? reject(err) : resolve(data.length);
            });
        });
    })
    .then((result) => {
        console.log(result);
    })
    .catch((err) => {
        console.log(err);
    });